package com.ruoyi.service.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 期货历史数据对象 qihuo_history_data
 *
 * @author ruoyi
 * @date 2024-04-04
 */
@Data
public class QihuoHistoryData extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 序号 */
    private String id;

    /** 名称 */
    @Excel(name = "名称")
    private String name;

    /** 时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date time;

    /** 开盘 */
    @Excel(name = "开盘")
    private BigDecimal open;

    /** 收盘 */
    @Excel(name = "收盘")
    private BigDecimal close;

    /** 成交量 */
    @Excel(name = "成交量")
    private Long volume;

    /** 最高 */
    @Excel(name = "最高")
    private BigDecimal high;

    /** 最低 */
    @Excel(name = "最低")
    private BigDecimal low;

    /** 振幅 */
    @Excel(name = "振幅")
    private BigDecimal zf;

    /** 成交额 */
    @Excel(name = "成交额")
    private Long amount;

    /** 涨跌额 */
    @Excel(name = "涨跌额")
    private BigDecimal range;

    /** 涨跌幅 */
    @Excel(name = "涨跌幅")
    private BigDecimal ratio;

    /** 持仓量 */
    @Excel(name = "持仓量")
    private Long holdingAmount;

    /** 昨收 */
    @Excel(name = "昨收")
    private BigDecimal preClose;

    /** ma5均价 */
    @Excel(name = "ma5均价")
    private BigDecimal ma5avgprice;

    /** ma5成交量 */
    @Excel(name = "ma5成交量")
    private Long ma5volume;

    /** ma10均价 */
    @Excel(name = "ma10均价")
    private BigDecimal ma10avgprice;

    /** ma10成交量 */
    @Excel(name = "ma10成交量")
    private Long ma10volume;

    /** ma20均价 */
    @Excel(name = "ma20均价")
    private BigDecimal ma20avgprice;

    /** ma20成交量 */
    @Excel(name = "ma20成交量")
    private Long ma20volume;
    @Setter
    @Getter
    private Date createtime;

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setTime(Date time)
    {
        this.time = time;
    }

    public Date getTime()
    {
        return time;
    }
    public void setOpen(BigDecimal open)
    {
        this.open = open;
    }

    public BigDecimal getOpen()
    {
        return open;
    }
    public void setClose(BigDecimal close)
    {
        this.close = close;
    }

    public BigDecimal getClose()
    {
        return close;
    }
    public void setVolume(Long volume)
    {
        this.volume = volume;
    }

    public Long getVolume()
    {
        return volume;
    }
    public void setHigh(BigDecimal high)
    {
        this.high = high;
    }

    public BigDecimal getHigh()
    {
        return high;
    }
    public void setLow(BigDecimal low)
    {
        this.low = low;
    }

    public BigDecimal getLow()
    {
        return low;
    }
    public void setZf(BigDecimal zf)
    {
        this.zf = zf;
    }

    public BigDecimal getZf()
    {
        return zf;
    }
    public void setAmount(Long amount)
    {
        this.amount = amount;
    }

    public Long getAmount()
    {
        return amount;
    }
    public void setRange(BigDecimal range)
    {
        this.range = range;
    }

    public BigDecimal getRange()
    {
        return range;
    }
    public void setRatio(BigDecimal ratio)
    {
        this.ratio = ratio;
    }

    public BigDecimal getRatio()
    {
        return ratio;
    }
    public void setHoldingAmount(Long holdingAmount)
    {
        this.holdingAmount = holdingAmount;
    }

    public Long getHoldingAmount()
    {
        return holdingAmount;
    }
    public void setPreClose(BigDecimal preClose)
    {
        this.preClose = preClose;
    }

    public BigDecimal getPreClose()
    {
        return preClose;
    }
    public void setMa5avgprice(BigDecimal ma5avgprice)
    {
        this.ma5avgprice = ma5avgprice;
    }

    public BigDecimal getMa5avgprice()
    {
        return ma5avgprice;
    }
    public void setMa5volume(Long ma5volume)
    {
        this.ma5volume = ma5volume;
    }

    public Long getMa5volume()
    {
        return ma5volume;
    }
    public void setMa10avgprice(BigDecimal ma10avgprice)
    {
        this.ma10avgprice = ma10avgprice;
    }

    public BigDecimal getMa10avgprice()
    {
        return ma10avgprice;
    }
    public void setMa10volume(Long ma10volume)
    {
        this.ma10volume = ma10volume;
    }

    public Long getMa10volume()
    {
        return ma10volume;
    }
    public void setMa20avgprice(BigDecimal ma20avgprice)
    {
        this.ma20avgprice = ma20avgprice;
    }

    public BigDecimal getMa20avgprice()
    {
        return ma20avgprice;
    }
    public void setMa20volume(Long ma20volume)
    {
        this.ma20volume = ma20volume;
    }

    public Long getMa20volume()
    {
        return ma20volume;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("time", getTime())
            .append("open", getOpen())
            .append("close", getClose())
            .append("volume", getVolume())
            .append("high", getHigh())
            .append("low", getLow())
            .append("zf", getZf())
            .append("amount", getAmount())
            .append("range", getRange())
            .append("ratio", getRatio())
            .append("holdingAmount", getHoldingAmount())
            .append("preClose", getPreClose())
            .append("ma5avgprice", getMa5avgprice())
            .append("ma5volume", getMa5volume())
            .append("ma10avgprice", getMa10avgprice())
            .append("ma10volume", getMa10volume())
            .append("ma20avgprice", getMa20avgprice())
            .append("ma20volume", getMa20volume())
            .append("createtime", getCreatetime())
            .toString();
    }
}
